home *** CD-ROM | disk | FTP | other *** search
-
- X680x0 Ko-Window 1行編集ウィンドウ
-
- chatwin.win Version 1.21
-
- 1994 10/12 小笠原博之
-
- Ko-Window の1行編集入力ウィンドウです。通信ソフト KX_Term20 と併用して、
- チャット支援プログラムとして用いることができます。
-
- KX_Term20 にはもともと1行分の編集入力機能があるわけですが、この chatwin
- を使えば、入力行ヒストリ、自動行ヘッダ、などの機能が使えるようになります。長
- い行や独立したファンクションキー定義も可能なので、チャットの時などに便利です。
- また複数同時に起動でき、複数人と同時にメッセージのやりとりもしやすくなります。
-
- また KX_Term20 以外のプログラムにも接続可能で、1行分の編集入力ウィンドウ
- として使用することができます。使い方次第で Ko-Window 全体で利用できる非常に
- 強力なツールとなり得るでしょう。
-
-
-
- ●使い方
-
- chatwin [<スイッチ>]
-
- デフォルトで、ウィンドウ上の KX_Term20 に接続します。この chatwin.win に入
- 力した文字列は、リターンキーによって KX_Term20 に送信されます。
-
- このとき行の最後に改行が付加されますが、起動時に -c をつけた場合、または
- [CTRL]+[J] を使った場合は改行がつきません。
-
-
-
- ●マウス操作
-
- 入力行の左右スクロールが可能です。ウィンドウの右端にも上下のスクロールスイッ
- チがありますが、それは使用しません。右下の角でもリサイズできます。
-
- 左ボタンのドラッグで、入力行の内容を送信できます。
-
-
-
- ●行編集
-
- Ko-Window の標準ライブラリに従った行編集が可能です。ED.X バインドと EMACS
- バインドの2種類が選択が可能です。CTRLを使わないカーソルキーなどの独立キーは、
- ED.X , EMACS どちらでも使用できます。
-
- ED.X Mode Emacs Mode 機能
- ---------------------------------------------------------------------
- [CTRL]+[m]|[RETURN]|[ENTER] [CTRL]+[m] 行の送信
- [CTRL]+[j] [CTRL]+[j] 行の送信(改行なし)
- [CTRL]+[a]|[↑] なし 単語左移動
- [CTRL]+[b]|[CLR] [CTRL]+[g] 行頭/行末移動
- [CTRL]+[d]|[→] [CTRL]+[f] 右移動
- [CTRL]+[f]|[↓] なし 単語右移動
- [CTRL]+[g]|[DEL] [CTRL]+[d] 文字削除
- [CTRL]+[h]|[BS] [CTRL]+[h] 後退削除
- [CTRL]+[k] [CTRL]+[k] カーソル以後削除
- [CTRL]+[o]|[INS] [CTRL]+[o] 挿入切り替え
- [CTRL]+[p] [CTRL]+[e] 行末へ
- [CTRL]+[q] [CTRL]+[a] 行頭へ
- [CTRL]+[s]|[←] [CTRL]+[b] 左移動
- [CTRL]+[u]|[HOME] [CTRL]+[u] 行クリア
- [CTRL]+[v] [CTRL]+[q] コントロール文字入力
- [CTRL]+[e]|[CTRL]+[w]|[ROLLDW] [CTRL]+[p] ヒストリの上移動
- [CTRL]+[x]|[ROLLUP] [CTRL]+[n] ヒストリの下移動
-
- Emacs モードへの切り替えは、[CTRL]+[_] を押したあと小文字の 'e' を押します。
- [CTRL]+[_] を2回押すと ED.X モードに戻ります。
-
- 環境変数「KOWINKEY」によって、デフォルトのモードを設定しておくことができま
- す。
-
- KOWINKEY の内容 意味
- ---------------------------------------------------------------
- 未定義 ED.X バインド
- ed ED.X バインド
- emacs Emacs バインド
- ied 強制Insert ED.X バインド
- iemacs 強制Insert Emacs バインド
-
- <例> set KOWINKEY=iemacs
-
- 強制Insert設定にしておくと、[INS]キーの LED 状態に関係なく、常に挿入状態に
- なります。(注意: 強制Insertモードは parts.a Level+11 のライブラリからの新機
- 能です。新しいライブラリをリンクしていないアプリケーションでは無効になります)
-
-
-
- ●ヒストリー機能
-
- 過去に入力した行を最大 7Kbyte まで覚えることができます。(v1.00とは違い、行
- 数での制限ではありません) 自由にさかのぼって再利用できます。
-
-
-
- ●行ヘッダ機能
-
- 入力行の先頭に、指定した文字列を勝手に挿入してくれる機能があります。起動時
- に
- chatwin -m/m,17,
-
- のように指定すると、行頭に「/m,17,」という文字列が付加されます。この挿入され
- たヘッダ部分も入力バッファ内に置かれるため、送信前に自由に編集が可能です。
-
- HOSTPRO 系のネット等では、メッセージ送信でチャットをする場合に便利です。
- (注:作者は他のネットをほとんど知りません)
-
-
-
- ●ファンクションキー定義
-
- あらかじめファンクションキー定義ファイルを用意しておくことで、[F1]~[F20]
- に任意の文字列を定義することができます。それぞれ半角で最大40文字まで設定可能
- です。
-
- ----------------ファンクションキー定義ファイル例
- こんばんは
- こんにちは
- おはようございます
- (^_^)
- (^_^;)
- %l\r
- /m,9,こらこら\r
- (笑)
- :
- -------------------------------------------------
-
- ファイルはただのテキストで、順番に1行が1つのファンクションキーに対応して
- います。上記の例だと [F1] を押すと「こんばんは」という文字列が挿入されます。
- [F4] は「(^_^)」です。
-
- このようなファイルを作ったら起動時に
-
- chatwin -rファイル名
-
- として与えると、ファンクションキーが使えるようになります。
-
- 特殊文字は、'\' を使って記述することができます。
-
- \r リターンキーです
- \xHH 16進数で直接文字コードを指定します
-
-
-
- ●複数起動可能
-
- chatwin -m/m,108, -t翠MSG
- chatwin -m/m,173, -tTomMSG
-
- などなど、ヘッダ指定ごとに複数起動すると、同時に複数人とメッセージのやりと
- りによるチャットができておもしろいでしょう。
-
- このように、同時に複数起動しておいてヒストリを分割して保存させるような使い
- 方ができます。
-
-
-
- ●スイッチ
-
- 起動時のスイッチ指定は以下のものがあります。(大文字小文字の区別あり)
-
- -x<num> 起動時のウィンドウ位置指定(dot座標)
- -y<num>
-
- -h<num> ウィンドウの横サイズ指定(dotサイズ)
-
- -f<font> フォントサイズを指定します。使用できるのは 10,12,16,24
- のみです。(default -f12)
-
- -a<font> 表示アトリビュートを指定します。(default -a9)
- 例 白地に黒文字 -f11
-
- -p<progname> 接続するプログラム名を指定します。拡張子も必要です。
- (default -pk20.win)
-
- -m<str> 行ヘッダ用の文字列を指定します
-
- -r<keyfile> ファンクションキー定義ファイルを指定します
-
- -u<num>or<str> 送信イベントのユーザーコードの指定をします
- (default -uUserPaste)
-
- -c 送信行の最後に改行をつけません
-
- -t<str> ウィンドウタイトル名を指定します
-
-
-
-
- ●応用例
-
- このプログラムは、KX_Term20 でのチャット以外にも、実にさまざまな使い方がで
- きます。
-
-
- その1 行入力の拡張用
-
- KX_Term20 での利用はこれに相当しますが、例えば他のプログラム、
-
- chatwin -pCommand.win
-
- とすれば入力文字列を Command.win に送信するようになります。
-
-
- その2 キー入力タイプのセレクタとして
-
- view.win 等、起動後に KF などからファイル名を受け取れるプログラムが
- あります。それらのプログラムに直接キーボードからファイル名を入力する
- ことができます。
-
- 例えば view.win 起動後に
-
- chatwin -pView.win -c
-
- と実行すると、ファイル名を入力してリターンキーを押すとそのファイルを
- view が読み込みます。
-
- またキーボードからファイル名を受け取ることのできない KoMAP.win 等の
- ミュージックプレイヤーでも
-
- chatwin -pKoMap.win -c
-
- とすれば、キーボードからファイル名を与えることができます。(しかもヒ
- ストリ機能付き)
-
-
- その3 対話的 usend.win として
-
- KX_Term20 の内部のマクロプログラムコマンドを、外部から直接指示するこ
- とができます。
-
- chatwin -uk20 -c
-
- このように実行しておけば、chatwin で入力した内容は KX_Term20 の内部
- コマンドとして実行されます。例えばアップロード時の行間ウエイト指定や、
- パラメータ変更など、内部の細かな修正を、いちいちマクロを通さなくても
- 起動後に直接指示することができます。豊富な行編集機能もあって重宝しま
- す。
-
-
-
- これらはほんの一例であって、応用で何でもできます。アイデアしだいです。
-
-
-
- ●最後に
-
- このプログラムに関する著作権はすべて作者が保持しますが、配布や利用は自由で
- す。転載時にも作者への連絡は不要です。
-
-
- 小笠原博之 oga@dgw.yz.yamagata-u.ac.jp
- SPS-NET: SPS0783 COR.
- DenDen-NET: DEN0006 COR.
-
-